/***
 * S9-采购商审批js
 * @author GHN-20151024
 */
$(function() {
	// 渲染页面-通用部分；
	commTemplUtil.initPage();
	// 渲染左侧菜单;
	commTemplUtil.initCommLeftMemu();
	
	var defaultPagingObj = {
			total : 20,
			pageSize : 10,
			page : 1
		};
	
	PAGE_DATA.pagingObj = $.extend(defaultPagingObj, PAGE_DATA.pagingObj);
	
	// 获取 第一页 分类数据;
	getClassifyData(1);
	
	//渲染检索条件中2个时间的日历组件
	$("#startTime").datepicker();
	$("#endTime").datepicker();
});
/**
 * 比较开始时间是否小于结算时间，是返回true；否返回false
 * @return
 */
function checkEndTime(startTime,endTime){  
    var start=new Date(startTime.replace("-", "/").replace("-", "/"));  
    var end=new Date(endTime.replace("-", "/").replace("-", "/"));  
    if(end<start){  
        return false;  
    }  
    return true;  
}  

//检索查询
function queryList(){
	var onClickObj = {
			onClick : function () {
				var clickPage = $(this).attr("data-page");
				getClassifyData(clickPage);
			}
		};
	
	var classifyTempl = _.template($('#item-template').html());
	//开始时间
	var startTime = $("#startTime").val();
	//结束时间
	var endTime = $("#endTime").val();
	if(!checkEndTime(startTime , endTime)){
		//错误信息框模板
		var errorObj1 = _.template($('#item-error').html());
		var errorTip = dialog({
			title: '注意',
			content: '<div class="dialog-div"><div>结束时间不可小于开始时间!</div><div class="price-game-btn"><div class="btn btn-warn btn-w140x40" id="ok" code="">确认</div></div></div>'
		});
		errorTip.showModal();
		$("#ok").click(function() {
			errorTip.remove();
		});
		return false;
	}
	//alert(endTime);
	//采购商名称
	var name = $("#name").val();
	//检索查询时页码默认为1
	// 获取 信息列表
	$.ajax({
		url : PAGE_CONFIG.requestUrl.listSuppliers,
		type : "get",
		data : {
			page : "1",  
			pageSize : 10,//页码默认为1，正式使用时检索查询不需页码
			startTime:startTime,
			endTime:endTime,
			name:name
		},
		success : function (result) {
			setClassifyData(result.data, classifyTempl);
			
			//  更新翻页控件
			var tmpConf = $.extend(result.pagingConfData, onClickObj)
				commTemplUtil.initPaging("#comm-paging", tmpConf);

		},
		error : function () {
			//错误信息框模板
			var errorObj1 = _.template($('#item-error').html());
			var errorTip = dialog({
				title: '注意',
				content: errorObj1
			});
			errorTip.showModal();
			$("#ok").click(function() {
				errorTip.remove();
			});
		}
	});
	
}

/*
*分页查询数据
*/
function getClassifyData(page) {
	var onClickObj = {
		onClick : function () {
			var clickPage = $(this).attr("data-page");
			getClassifyData(clickPage);
		}
	};
	var classifyTempl = _.template($('#item-template').html());
	
	//授权开始时间
	var startTime = $("#sqstartTime").val();
	//授权结束时间
	var endTime = $("#sqendTime").val();
	var name = $("#name").val();
	
	// 获取 信息列表
	$.ajax({
		url : PAGE_CONFIG.requestUrl.listSuppliers,
		type : "get",
		data : {
			page : page + "",
			pageSize : PAGE_DATA.pagingObj.pageSize,
			//以下3个参数在默认取第一页数据时没用，此处只因和检索查询查的同一个mock URL需要配置起，后面正式使用时去掉
			
			startTime:'',
			endTime:'',
			name:''
		},
		success : function (result) {
			setClassifyData(result.data, classifyTempl);
			
			//  更新翻页控件
			var tmpConf = $.extend(result.pagingConfData, onClickObj)
				commTemplUtil.initPaging("#comm-paging", tmpConf);

		},
		error : function () {
			//错误信息框模板
			var errorObj1 = _.template($('#item-error').html());
			var errorTip = dialog({
				title: '注意',
				content: errorObj1
			});
			errorTip.showModal();
			$("#ok").click(function() {
				errorTip.remove();
			});
		}
	});
}
/***
 * 页面填充数据后, 绑定事件;
 */
function bindEvents(htmlObj) {

	var commBody = $("#commTabs_1_body");
	var classifyTempl = _.template($('#item-template').html());

	//同意
	commBody.find(".ag").on("click", function () {
		//取得id
		var id = $(this).parents("ul").attr("data-id");
		
        var d = dialog({
             title: '选择授权时间',
             content: '<div class="dialog-div"><div class="warrant-time">授权时间： <input type="text" class="w130 h30" value="" id="sqstartTime" maxlength="16"/>-<input type="text" class="w130 h30" id="sqendTime" maxlength="16" value=""/></div><div class="tc clearfix" style="margin-top:70px"><div class="btn btn-warn btn-w140x40 lh28" id="edtsub">确定</div></div></div>',
			 onshow : function () {
		        	//渲染授权中2个时间的日历组件
		        	$("#sqstartTime").datepicker();
		        	$("#sqendTime").datepicker();
					var that = this;
					
					// 提交
					$("#edtsub").on("click", function () {
						//授权开始时间
						var startTime = $("#sqstartTime").val();
						//授权结束时间
						var endTime = $("#sqendTime").val();
						
						//判断授权时间不可为空
						if(startTime == "" || endTime == ""){
							//错误信息框模板
							var errorObj1 = _.template($('#item-error').html());
							var errorTip = dialog({
								title: '注意',
								content: '<div class="dialog-div"><div>请填写授权时间!</div><div class="price-game-btn"><div class="btn btn-warn btn-w140x40" id="ok" code="">确认</div></div></div>'
							});
							errorTip.showModal();
							$("#ok").click(function() {
								errorTip.remove();
							});
							return false;
						}
						//判断授权结束时间不可小于开始时间
						if(!checkEndTime(startTime , endTime)){
							//错误信息框模板
							var errorObj1 = _.template($('#item-error').html());
							var errorTip = dialog({
								title: '注意',
								content: '<div class="dialog-div"><div>结束时间不可小于开始时间!</div><div class="price-game-btn"><div class="btn btn-warn btn-w140x40" id="ok" code="">确认</div></div></div>'
							});
							errorTip.showModal();
							$("#ok").click(function() {
								errorTip.remove();
							});
							return false;
						}
						//提交请求
						$.ajax({
							url : PAGE_CONFIG.requestUrl.grantSuppliers,
							type : "put",
							data : {
								id:id,
								startTime : startTime,
								endTime : endTime,
								_token : COMM_DATA.csrfToken
							},
							success : function (result) {
								//页面列表模板
								var templ = _.template($("#item-template").html());
								//响应
								setClassifyData(result.data, templ);
								that.remove();
							},
							error : function () {
								that.remove();
								
								//错误信息框模板
								var errorObj1 = _.template($('#item-error').html());
								var errorTip = dialog({
									title: '注意',
									content: errorObj1
								});
								errorTip.showModal();
								$("#ok").click(function() {
									errorTip.remove();
								});
							}
						});
					});

				}
        });
        d.showModal();
	});

	//拒绝
	commBody.find(".re").on("click", function () {
		var id = $(this).parents("ul").attr("data-id");
		//确认框模板
		var confirmObj1 = _.template($('#item-confirm').html());
		var dia = dialog({
			title: '注意',
			content: confirmObj1
		});
		dia.showModal();
		
		$("#tj").on("click", function() {
			$.ajax({
				url: PAGE_CONFIG.requestUrl.reSuppliers,
				type: "put",
				data: {
					id: id,
					_token: COMM_DATA.csrfToken
				},
				success: function(result) {
					//响应
    				setClassifyData(result.data, classifyTempl);
    				dia.remove();
				},
				error: function() {
					dia.remove();
					
					//错误信息框模板
					var errorObj1 = _.template($('#item-error').html());
					var errorTip = dialog({
						title: '注意',
						content: errorObj1
					});
					errorTip.showModal();
					$("#ok").click(function() {
						errorTip.remove();
					});
				}
			});
		});
		$(".remove").click(function() {
			dia.remove();
		});
	});
	
};
/**
 * 生成-信息列表,
 */
function setClassifyData(data, templ) {
	var classifyTemplHtml = templ(data);
	$("#commTabs_1_body").html(classifyTemplHtml);
	bindEvents(templ);
};